(fn aref (a k)            (%aref a k))
(fn =-aref (v a k)        (=-%aref v a k))
(fn array? (x)            (*array.is-array x))
(defmacro aref (a k)      `(%aref ,a ,k))
(defmacro =-aref (v a k)  `(=-%aref ,v ,a ,k))
(defmacro array? (x)      `(*array.is-array ,x))

(fn list-array (x)
  (!= (make-array)
    (@ (i x !)
      (!.push i))))
